package org.example.campusforum.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.ArrayList;

/**
 * 文章查询响应数据传输对象
 *
 * 用于向前端返回文章查询结果，包含总记录数和当前页的文章数据。
 * 配合分页查询功能，提供完整的查询结果信息。
 *
 * @author CampusForum Team
 * @version 1.0
 * @since 2024
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ArticleGetResponse {

    /**
     * 总记录数
     * 满足查询条件的文章总数量，用于前端分页计算
     */
    Integer total;

    /**
     * 当前页文章数据列表
     * 包含当前页面的所有文章记录，每条记录包含文章和作者信息
     */
    ArrayList<ArticleGetResponseDataRecord> records;
}
